package site.addzero.cli.setting

import java.io.File

object SettingContext {
    val HOME_DIR
        get() = run {
            val property = System.getProperty("user.home")
            if (property.contains("/Users/zjarlin/IdeaProjects")) {
                "/Users/zjarlin"
            } else {
                property
            }
        }

    //可以改
    val WORK_DIR = "${HOME_DIR}${File.separator}.config${File.separator}df"
//    可以改
    val SYNC_DIR: String = "${WORK_DIR}${File.separator}dfctx"
    val USEFUL_SOFT_DIR: String = "${WORK_DIR}${File.separator}useful"

    val STATUS_DIR = "$WORK_DIR${File.separator}cache${File.separator}.status"
    val STATUS_FILE = "$STATUS_DIR${File.separator}task_status.json"
    val MAC_OPTIMIZATION_STATUS_FILE =
        "$STATUS_DIR${File.separator}mac_optimization_status" +
            ".json"

    var CONFIG_FILE = "$SYNC_DIR${File.separator}config.json"
    val DOTFILES_DIR = "$SYNC_DIR${File.separator}.dotfiles"


    val DEFAULT_PKG: Set<String> = linkedSetOf(
        "git", "curl", "wget", "zsh", "neovim", "node", "npm", "yarn", "qq",
        "wechat","utools"

        //必剪
        ,"bcut"
    )
    val defaultWinPackages = setOf(

        " pnpm.pnpm",
        "Anysphere.Cursor",
        "Git.Git",           // Git版本控制工具
        "Microsoft.WindowsTerminal",  // Windows终端
        "Google.Chrome",     // Chrome浏览器
        "Microsoft.VisualStudioCode", // Visual Studio Code
        "JetBrains.Toolbox",  // JetBrains工具箱
        "ClashVergeRev.ClashVergeRev",
        "Tencent.WeChat",
        "Tencent.QQ",
        "OpenJS.NodeJS",
        "JetBrains.IntelliJIDEA.Ultimate",
        "liule.Snipaste",
        "Yuanli.uTools",
        "Ruihu.Apifox",
        "GeekUninstaller.GeekUninstaller",
        "RustDesk.RustDesk"
    )

val absParamDescription = "是否使用绝对路径(默认为相对家目录${HOME_DIR}路径," +
        "即便你这个参数采用了默认值abs=false," +
        "但你仍然给了家目录前缀的绝对路径,我还是会纠错为abs=true来笃定它是绝对路径)"

}
